<!-- 数据操作组件 -->
<template>
    <a-modal :title='title' :visible='visible' :confirm-loading='confirmLoading' @ok='handleOk' @cancel='close'
        :width='666' :destroyOnClose='true' :footer="null">
        <WxLogin appid="" scope="snsapi_login" :redirect_uri="encodeURIComponent('https://www.kdxmxu.cn')">
        </WxLogin>
    </a-modal>
</template>

<script>
//这里可以导入其他文件（比如：组件，工具js，第三方插件js，json文件，图片文件等等）
//例如：import 《组件名称》 from '《组件路径》';
import { cleanObject } from '@/utils/CommonUtil';
import WxLogin from 'vue-wxlogin'
export default {
    // eslint-disable-next-line vue/multi-word-component-names
    name: 'Modal',
    // 子组件参数列表
    props: {},
    //import引入的组件需要注入到对象中才能使用
    components: { WxLogin },
    data() {
        //这里存放数据
        return {
            api: {
                detail: '/admin_server/xx/', // 详情
                save: '/admin_server/xx/save', // 新增
                update: '/admin_server/xx/update', // 修改
            },
            title: '',
            visible: false, // 数据操作组件是否打开
            disabled: false, // 是否禁用更改数据
            confirmLoading: false, // 提交按钮loading
            labelCol: { span: 4 }, // label占位尺寸
            wrapperCol: { span: 18 }, // 输入框占位尺寸
        };
    },
    //监听属性 类似于data概念
    computed: {},
    //监控data中的数据变化
    watch: {},
    //方法集合
    methods: {
        handleOk() {
            this.$refs.ruleForm.validate((valid) => {
                if (valid) {
                    this.confirmLoading = true;
                    if (this.model.id) {
                        this.$request
                            .post2(this.api.update, this.model)
                            .then((res) => {
                                if (res.success) {
                                    this.$message.success('更新成功');
                                    this.$emit('handleOk');
                                }
                                this.confirmLoading = false;
                            });
                    } else {
                        this.$request
                            .post2(this.api.save, this.model)
                            .then((res) => {
                                if (res.success) {
                                    this.$message.success('添加成功');
                                    this.$emit('handleOk');
                                }
                                this.confirmLoading = false;
                            });
                    }
                }
            });
        },
        resetForm() {
            cleanObject(this.model);
        },
        async init(id, title) {
            this.title = title;
            this.visible = true;
            this.disabled = false;
        },
        close() {
            this.visible = false;
        },

    },
    //生命周期 - 创建完成（可以访问当前this实例）
    created() {

    },
    //生命周期 - 挂载完成（可以访问DOM元素）
    mounted() {
    },
    beforeCreate() { }, //生命周期 - 创建之前
    beforeMount() { }, //生命周期 - 挂载之前
    beforeUpdate() { }, //生命周期 - 更新之前
    updated() { }, //生命周期 - 更新之后
    beforeDestroy() { }, //生命周期 - 销毁之前
    destroyed() { }, //生命周期 - 销毁完成
    activated() { }, //如果页面有keep-alive缓存功能，这个函数会触发
}
</script>
<style>

</style>